Complex Branch Profiling for Dynamic Conditional Execution
نویسندگان
چکیده
Branch predictors are widely used as an alternative to deal with conditional branches. Despite the high accuracy rates, misprediction penalties are still large in any superscalar pipeline. DCE, or Dynamic Conditional Execution, is a alternative to reduce the number of predicted branches by executing both paths of certain branches thus reducing the number of predictions and therefore the misprediction occurrence. The goal of this work is to analyze the complexity of branch structures and determine the number of branches that can be predicated in DCE and the distribution of mispredictions according to the classification proposed. The complex branch classification proposed extends the classification presented by Klauser [KLA98]. As result, it is showed that an average of 35% of all branches can be predicated in DCE and around 32% of mispredictions fall into these branches. Keywords— Superscalar architectures, Multipath execution, Branch prediction, Dynamic predication
منابع مشابه
Phase Locality Detection Using a Branch Trace Buffer for Efficient Profiling in Dynamic Optimization
Efficient profiling is a major challenge for dynamic optimization because the profiling overhead contributes to the total execution time. In order to identify program hot spots for runtime optimization, the profiler in a dynamic optimizer must detect new execution phases and subsequent phase changes. Current profiling approaches used in prototype dynamic optimizers are interpretation or instrum...
متن کاملAn Efficient Algorithm for General 3D-Seismic Body Waves (SSP and VSP Applications)
Abstract The ray series method may be generalized using a ray centered coordinate system for general 3D-heterogeneous media. This method is useful for Amplitude Versus Offset (AVO) seismic modeling, seismic analysis, interpretational purposes, and comparison with seismic field observations.For each central ray (constant ray parameter), the kinematic (the eikonal) and dynamic ray tracing system ...
متن کاملGuarded Execution and Branch Prediction in Dynamic ILP Processors†
In this paper we evaluate the effects of guarded (or conditional, or predicated) execution on the performance of an instruction level parallel processor employing dynamic branch prediction. First, we assess the utility of guarded execution, both qualitatively and quantitatively, using a variety of application programs. Our assessment shows that guarded execution significantly increases the oppo...
متن کاملA dynamic block-level execution profiler
Most performance enhancing mechanisms in current processors, such as branch predictors or prefetchers, rely on program characteristics monitored at the granularity of single instructions. However, many of these characteristics can be obtained at the basic block-level instead. The coarser granularity allows a larger portion of the code to be examined, enabling a more accurate profiling and a det...
متن کاملImproving Conditional Branch Prediction on Speculative Multithreading Architectures
Dynamic conditional branch prediction is an indispensable technique for increasing performance in modern processors. However, currently proposed schemes suffer from loss of accuracy when applied to speculative multithreading CMP architectures. In this paper, we quantitatively investigate this problem and present a hardware scheme to improve the prediction accuracy. Evaluation results show that ...
متن کامل